package com.cz.video.common.vod.dto;

import com.fasterxml.jackson.annotation.JsonProperty;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * @ClassName : AliyunUserData
 * @Description : 媒体上传自定义设置
 * @Author : 陈智
 * @Date: 2023/7/8  17:25
 */
@Data
@Schema(title = "媒体上传自定义设置")
public class AliyunUserData {

    @Schema(title = "回调参数")
    @JsonProperty("MessageCallback")
    private MessageCallback messageCallback;

    @Schema(title = "扩展字段",description = "用于回调时透传返回，最大长度512字节。数据类型为JSON Object")
    @JsonProperty("Extend")
    private String extend;

    @Schema(title = "上传加速设置",description = "数据类型为JSON Object")
    @JsonProperty("AccelerateConfig")
    private String accelerateConfig;


    @Data
    @AllArgsConstructor
    @NoArgsConstructor
    @Schema(title = "回调参数")
    public static class MessageCallback {

        @Schema(title = "回调类型",description = "如http")
        @JsonProperty("CallbackType")
        private String callbackType;


        @Schema(title = "回调地址")
        @JsonProperty("CallbackURL")
        private String callbackURL;
    }
}
